package com.quectel.sdk.baidu.model.text;

import com.quectel.sdk.baidu.model.BaiduBCEBaseResp;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.List;

/**
 * @author zhangheng
 * @email nolan.zhang@quectel.com
 * @date 2023/5/12 9:28
 * @description new java file header...
 * <p>
 *
 * log_id	Long	Y	请求唯一id
 * error_code	Long	N	错误提示码，失败才返回，成功不返回
 * error_msg	String	N	错误提示信息，失败才返回，成功不返回
 * conclusion	String	N	审核结果，可取值：合规、不合规、疑似、审核失败
 * conclusionType	Integer	N	审核结果类型，可取值1.合规，2.不合规，3.疑似，4.审核失败
 * data	Array	N	不合规/疑似/命中白名单项详细信息。响应成功并且conclusion为疑似或不合规或命中白名单时才返回，响应失败或conclusion为合规且未命中白名单时不返回。
 * +error_code	Integer	否	内层错误提示码，底层服务失败才返回，成功不返回
 * +error_msg	String	否	内层错误提示信息，底层服务失败才返回，成功不返回
 * +type	Integer	N	审核主类型，11：百度官方违禁词库、12：文本反作弊、13:自定义文本黑名单、14:自定义文本白名单
 * +subType	Integer	N	审核子类型，此字段需参照type主类型字段决定其含义：
 * 			当type=11时subType取值含义：
 * 			0:百度官方默认违禁词库
 * 			当type=12时subType取值含义：
 * 			0:低质灌水、1:违禁违规、2:文本色情、3:敏感信息、4:恶意推广、5:低俗辱骂 6:恶意推广-联系方式、7:恶意推广-软文推广
 * 			当type=13时subType取值含义：
 * 			0:自定义文本黑名单
 * 			当type=14时subType取值含义：
 * 			0:自定义文本白名单
 * +msg	String	N	不合规项描述信息
 * +hits	Array	N	送检文本违规原因的详细信息
 * ++probability	Float	N	不合规项置信度
 * ++datasetName	String	N	违规项目所属数据集名称
 * ++words	Array	N	送检文本命中词库的关键词（备注：建议参考新字段“wordHitPositions”，包含信息更丰富：关键词以及对应的位置及标签信息）
 * ++modelHitPositions	Array	N	送检文本命中模型的详细信息，包含位置信息及置信度信息。位置信息：命中模型的违规内容在送检原文中的位置（从0开始计算）：“开始位置”、“结束位置”；置信度信息：命中模型对应的置信度分数（范围：0至1，数字越大，可能性越高）。返回示例见下方“成功响应示例——不合规”部分
 * ++wordHitPositions	Array	N	送检文本命中词库的详细信息，为Object的列表，包含words、positions、label三个字段，详细描述如下表所示。返回示例见下方“成功响应示例——不合规”部分
 * +++keyword	String	N	送检文本命中词库的关键词
 * +++positions	Array	N	关键词在送检原文中的位置（从0开始计算）：分别为“起始位置”，“结束位置”
 * +++label	String	N	关键词命中的细分标签，标签规则见文末“细分标签对照表”
 */
@Data
@EqualsAndHashCode(callSuper=true)
public class BaiduBCETextResp extends BaiduBCEBaseResp implements Serializable {

    private String conclusion;

    private int conclusionType;

    private List<BaiduBCETextDataModel> data;
}
